/**
 * 
 */
package com.oolong.account.service;

import com.oolong.account.exception.LoginException;
import com.oolong.account.model.UserModel;

/**
 * @author oolong
 * 
 */
public interface ExtraService {
	/**
	 * @param name
	 * @param password
	 * @return 如果用户存在，则返回用户ID，如果用户不存在则返回0
	 * @throws LoginException
	 */
	UserModel validate(String name, String password) throws Exception;

	/**
	 * @param email
	 * @return 发送邮件方法，发送成功返回TRUE，失败返回FALSE;
	 */
	void sendMail(String to, String text);

	/**
	 * @param name
	 * @param password
	 * @param email
	 * @return 创建新用户服务
	 * @throws LoginException
	 */
	int createUser(String name, String password, String email) throws Exception;

	/**
	 * @param id
	 * @param oldpsw
	 * @param newpsw
	 * @param email
	 * @return 修改用户信息服务
	 * @throws Exception
	 */
	int editUser(Integer id, String oldpsw, String newpsw, String email)
			throws Exception;

	/**
	 * @param name
	 *            通过用户名判断用户是否已经存在
	 * @return
	 */
	boolean validateUserExist(String name);

}
